package day07.demo;

import java.util.Scanner;

/**
 * 5.需求:<<主持人大赛>>有N位评委给选手评分，分数范围为0到100之间的浮点数
 *       选手的最终得分为: 去掉最高分和最低分之后的N-2位评委的平均分
 *   训练目标:分支+循环+数组+方法
 */
public class CalTotalAvg {

    public static void main(String[] args) {

    double[] scores=inputData(6);
    double avg=calAvg(scores);
    System.out.println("平均分为:"+avg);

    }

    //录入N位评委的评分
    private static double[] inputData(int n){
        double[] scores=new double[n];
        Scanner sc=new Scanner(System.in);
        for (int i=0;i<scores.length;i++){
            System.out.println("请录入第"+(i+1)+"位评委的分数");

            scores[i]=sc.nextDouble();
        }
        return scores;
    }

    //计算平均值
    public static double calAvg(double[] scores){
        double total=0.0;//总分
        double max=scores[0];//最高分
        double min=scores[0];//最低分
        for (int i=0;i<scores.length;i++){
            if (scores[i]>max){
               max=scores[i];
            }
            if (scores[i]<min){
                min=scores[i];
            }
            total=total+scores[i];
        }

        double avg=(total-min-max)/(scores.length-2);//平均分
        return avg;
    }
}
